'use strict';

module.exports = {
  /**
   * 成功响应
   * @param {any} data - 返回数据
   * @param {string} message - 提示信息
   */
  success(data = null, message = '操作成功') {
    this.body = {
      code: 0,
      message,
      data,
    };
  },

  /**
   * 错误响应
   * @param {string} message - 错误信息
   * @param {number} code - 错误码
   * @param {any} data - 返回数据
   */
  error(message = '操作失败', code = 1, data = null) {
    this.body = {
      code,
      message,
      data,
    };
  },

  /**
   * 分页响应
   * @param {Array} data - 数据列表
   * @param {number} total - 总数
   * @param {number} page - 当前页码
   * @param {number} pageSize - 每页数量
   */
  page(data = [], total = 0, page = 1, pageSize = 10) {
    this.body = {
      code: 0,
      message: '操作成功',
      data: {
        list: data,
        pagination: {
          page,
          pageSize,
          total,
        },
      },
    };
  },
};